import axios from 'axios';

const instance = axios.create({
    baseURL: '',
    timeout: 3000,
    // headers: { 'X-Custom-Header': 'foobar' }
});

// 添加请求拦截器
instance.interceptors.request.use(function (config) {
    // 在发送请求之前做些什么
    // let token = localStorage.getItem('token')
    // config.headers.Authorization = 'Bearer' + token
    return config;
}, function (error) {
    // 对请求错误做些什么
    return Promise.reject(error);
});

// 添加响应拦截器
instance.interceptors.response.use(function (response) {
    // 对响应数据做点什么
    return response;
}, function (error) {
    // 对响应错误做点什么
    // if (error.message.includes('timeout')) {
    //     alert('页面超时处理')
    // }
    const code = error.response.status
    switch (code) {
        case 400:
            console.log('请求错误');
            break;
        case 401:
            localStorage.removeItem('token')
            console.log('未授权');
            break;
        case 403:
            console.log('禁止访问');
            break;
        case 404:
            console.log('资源未找到');
            break;
        case 500:
            console.log('服务器内部错误');
            break;
    }
    return Promise.reject(error);
});

export default instance